package com.ruoyi.tb.lmt.domain.vo;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import lombok.Data;
import java.util.Date;

import java.io.Serializable;

/**
 * 计划明细视图对象 tb_repairplanlist
 *
 * @author ruoyi
 * @date 2023-12-07
 */
@Data
@ExcelIgnoreUnannotated
public class TbRepairplanlistVo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @ExcelProperty(value = "主键")
    private Long id;

    /**
     * 计划id
     */
    @ExcelProperty(value = "计划id")
    private Long planId;

    /**
     * 车型
     */
    @ExcelProperty(value = "车型")
    private String lmtType;

    /**
     * 车号
     */
    @ExcelProperty(value = "车号")
    private String lmtNumber;

    /**
     * 修别
     */
    @ExcelProperty(value = "修别")
    private String repairType;

    /**
     * 修次
     */
    @ExcelProperty(value = "修次")
    private String repairTimes;

    /**
     * 编号
     */
    @ExcelProperty(value = "编号")
    private String repairCode;

    /**
     * 修程（修1、修2、修3）
     */
    @ExcelProperty(value = "修程", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "修=1、修2、修3")
    private String repairChar;

    /**
     * 开始日期
     */
    @ExcelProperty(value = "开始日期")
    private Date repairStartDate;

    /**
     * 结束日期
     */
    @ExcelProperty(value = "结束日期")
    private Date repairEndDate;

    /**
     * 检修单元
     */
    @ExcelProperty(value = "检修单元")
    private String repairUnit;

    /**
     *
     */
    @ExcelProperty(value = "")
    private Date inTime;

    /**
     *
     */
    @ExcelProperty(value = "")
    private Date dutyTime;

    /**
     *
     */
    @ExcelProperty(value = "")
    private Date outTime;

    /**
     *
     */
    @ExcelProperty(value = "")
    private Long repairKm;

    /**
     *
     */
    @ExcelProperty(value = "")
    private String placeRoom;

    /**
     *
     */
    @ExcelProperty(value = "")
    private String placeLine;

    /**
     * 状态
     */
    @ExcelProperty(value = "状态")
    private String status;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;

    /**
     *
     */
    @ExcelProperty(value = "")
    private String jszd;

    /**
     *
     */
    @ExcelProperty(value = "")
    private String thcl;

    /**
     * 配属车间
     */
    @ExcelProperty(value = "配属车间")
    private String workerTeam;
    @ExcelProperty(value = "计划有效期")
    private Date expirationDate;
    @ExcelProperty(value = "是否更换捣固装置")
    private Integer isReplaceDgzz;
    @ExcelProperty(value = "是否更换发动机")
    private Integer isReplaceFdj;

    @TableField(exist = false)
    private String planName;
    @TableField(exist = false)
    private String planCode;

    /**
     * 段验人
     */
    @ExcelProperty(value = "段验人")
    private String checkUser2;

    /**
     * 段验时间
     */
    @ExcelProperty(value = "段验时间")
    private Date checkTime2;

    /**
     * 局验人
     */
    @ExcelProperty(value = "局验人")
    private String checkUser3;

    /**
     * 局验时间
     */
    @ExcelProperty(value = "局验时间")
    private Date checkTime3;

    /**
     * 任务总数
     */
    @ExcelProperty(value = "任务总数")
    private String taskAllCount;

    /**
     * 任务完成数
     */
    @ExcelProperty(value = "任务完成数")
    private String taskFinishCount;

    /**
     * 遗留任务数
     */
    @ExcelProperty(value = "遗留任务数")
    private String legacyIssuesCount;

    @ExcelProperty(value = "互检问题数")
    private String workNeed;
    @ExcelProperty(value = "专检问题数")
    private String workNeed2;

    /**
     * 实际开始时间
     */
    @ExcelProperty(value = "实际开始时间")
    private Date startTime;

    /**
     * 实际完成时间
     */
    @ExcelProperty(value = "实际完成时间")
    private Date endTime;

    @ExcelProperty(value = "主修工队")
    private String workGroup;

    //@ExcelProperty(value = "主修工队id")
    private Long workGroupId;

    //@ExcelProperty(value = "专检人")
    private String specialUser;

    private Date specialTime;

    //@ExcelProperty(value = "验收人")
    private String acceptanceUser;

    private Date acceptanceTime;

    //检修天数
    private String repairDays;

    //上次修程
    private String lastRepairChar;
    //上次检修日期
    private Date lastRepairDate;
    //制动装置有效期
    private Date zdfRepairDate;
    //探伤有效期
    private Date tsRepairDate;

    //申请人
    private String applicant;

    //审批时间
    private Date approvedTime;

    //审批人
    private String approvedUser;

    //审批状态
    private String approvedStatus;

    @ExcelProperty(value = "轮次")
    private String repairNum;

}
